/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package DAO;

import DTO.KhachHang;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;

/**
 *
 * @author PC
 */
public class KhachHangDAO {
     public static boolean Them(KhachHang n) {
        try {
            Connection conn = DBConnect.Connect();
            Statement statement = conn.createStatement();
            String sql = String.format ("INSERT INTO nguoi_dung(id, ho_ten, so_cmnd,ngay_sinh, gioi_tinh, dia_chi, dien_thoai, loai_nguoi_dung, ngay_tao) "
                    + "VALUES('%s','%s','%d','%d')"
                    ,n.Id,n.HoTen,n.So_CMND,n.NgaySinh,n.GioiTinh,n.DiaChi,n.DienThoai,n.LoaiNguoiDung,n.NgayTao);
            statement.executeUpdate(sql);
            conn.close();
            return true;
           // JOptionPane.showMessageDialog(null, "Thêm thành công!!!", "Thông báo", 1);
        } catch (Exception ex) {
           // JOptionPane.showMessageDialog(null, "Thêm Không thành công!!!", "Thông báo", 1);
        }
        return false;
    }

    public static boolean Xoa(String id) {
        try {
            Connection conn = DBConnect.Connect();
            String strSQL = "delete from nguoi_dung where id = ?";
            PreparedStatement pst = conn.prepareStatement(strSQL);
            pst.setString(1, id);
            pst.executeUpdate();
            //JOptionPane.showMessageDialog(null, "Xóa thành công!!!", "Thông báo", 1);
            pst.close();
            return true;
        } catch (Exception ex) {
            ex.printStackTrace();
            ex.getMessage();
           // JOptionPane.showMessageDialog(null, ex.getStackTrace(), "Thông báo lỗi", JOptionPane.OK_OPTION);
        }
        return false;
    }
    
    public static ResultSet TimKiemTatCa() {
        try {
            Connection conn = DBConnect.Connect();
            String sql = "Select  nd.ID,nd.HO_TEN, nd.SO_CMND, nd.NGAY_SINH, nd.gioi_tinh, nd.DIA_CHI, nd.DIEN_THOAI,"
                    + " u.USERNAME, u.PASS from NGUOI_DUNG nd, USERLIST u where  u.ID_ND = nd.ID ";
            Statement st = conn.createStatement();
            ResultSet rs = st.executeQuery(sql);
          //  conn.close();
            return rs;

        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, ex.getStackTrace(), "Thông báo lỗi", JOptionPane.OK_OPTION);
            return null;
        }
// làm sao để hiện bản trong câu truy vấn?????? ai biết :v
        //mày cài navicat đi ... mày copy wa may mày thu coi sau cho no nhanh hehe\
        //mày chưa có from bảng nhân viên trong câu sql thằng cờ hón à à hehe giờ a mí tháy :v
    }
      public static boolean KiemTraTonTai(String MaNV)
    {
        try
        {
            Connection con = DBConnect.Connect();
            String sql = "Select * From KhachHang Where MaKhachHang like ?";
            
            PreparedStatement ps = con.prepareStatement(sql);
            ps.setString(1, MaNV);
            
            ResultSet rs = ps.executeQuery();
            
            if (rs.next())
                return true;
        }
        catch (Exception ex)
        {
        }
        return false;
    }
       public static boolean Update(KhachHang NV,String id)
    {
        try
        {
            Connection con = DBConnect.Connect();
            String sql = "Update nguoi_dung set id=?, ho_ten=?, so_cmnd=?,ngay_sinh=?, gioi_tinh=?, dia_chi=?, dien_thoai=?, loai_nguoi_dung=?, ngay_tao=? Where id = ?";
            
            PreparedStatement ps = con.prepareStatement(sql);
            ps.setString(1, NV.Id);
            ps.setString(2, NV.HoTen);
            ps.setString(3, NV.So_CMND);
            ps.setString(4,NV.NgaySinh);
            ps.setString(5,NV.GioiTinh);
            ps.setString(6,NV.DiaChi);
            ps.setString(7,NV.DienThoai);
            ps.setInt(8,NV.LoaiNguoiDung);
            ps.setString(9,NV.NgayTao);
            ps.setString(10,id);
            int n = ps.executeUpdate();
            con.close();
            
            if (n == 1)
                return true;
        }
        catch (Exception ex)
        {
        }
        return false;
    }
}
